package com.xuan.webfinally.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 土壤温度和水分占比监测数据表
 * </p>
 *
 * @author gyuxuan
 * @since 2025-09-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("slope_soil_data")
@ApiModel(value="SlopeSoilData对象", description="土壤温度和水分占比监测数据表")
public class SlopeSoilData implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "逻辑主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @TableField("slope_id")
    private String slopeId;

    @TableField("monitor_id")
    private String monitorId;

    @ApiModelProperty(value = "设备SN")
    @TableField("device_sn")
    private String deviceSn;

    @ApiModelProperty(value = "地面以下所监测层位土壤中的温度(°C)")
    @TableField("soil_temperature0")
    private Double soilTemperature0;

    @ApiModelProperty(value = "土壤中水分占有体积和土壤总体积比值(%)")
    @TableField("soil_moisture_ratio0")
    private Double soilMoistureRatio0;

    @ApiModelProperty(value = "部门ID")
    @TableField("dept_id")
    private Long deptId;

    @ApiModelProperty(value = "采集时间")
    @TableField("create_time")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;

    @TableField("soil_temperature2")
    private Double soilTemperature2;

    @TableField("soil_temperature3")
    private Double soilTemperature3;

    @TableField("soil_temperature4")
    private Double soilTemperature4;

    @TableField("soil_temperature1")
    private Double soilTemperature1;

    @TableField("soil_moisture_ratio1")
    private Double soilMoistureRatio1;

    @TableField("soil_moisture_ratio2")
    private Double soilMoistureRatio2;

    @TableField("soil_moisture_ratio3")
    private Double soilMoistureRatio3;

    @TableField("soil_moisture_ratio4")
    private Double soilMoistureRatio4;


}
